package com.shop.user.atom;

import com.shop.common.entity.user.UserBase;
import com.shop.common.model.ServiceBean;
import com.shop.common.model.param.user.MessageInput;
import com.shop.common.model.param.user.UserPayInput;
import com.shop.common.model.param.user.UserPayLogInput;
import com.shop.common.model.result.user.UserPayOutput;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;

/**
 * @Description:
 *
 * @author zhoulk
 * @date: 2019年04月08日  0:25
 */
@RequestMapping("/user/atom")
public interface IUserAtomApi {
    @GetMapping(value = "/user/{userId}", produces = MediaType.APPLICATION_JSON_VALUE)
    UserBase qryUserBaseByUserId(@PathVariable(value = "userId") Integer id);

    @GetMapping(value = "/userpay/{userId}", produces = MediaType.APPLICATION_JSON_VALUE)
    UserPayOutput qryUserPayByUserId(@PathVariable(value = "userId") Integer id);

    @PutMapping(value = "/userpay", produces = MediaType.APPLICATION_JSON_VALUE)
    ServiceBean<String> modUserPay(@RequestBody UserPayInput userPayInput);

    @PostMapping(value = "/userpay/log", produces = MediaType.APPLICATION_JSON_VALUE)
    ServiceBean<Integer> addUserPayLog(@RequestBody UserPayLogInput userPayLogInput);

    @PostMapping(value = "/message", produces = MediaType.APPLICATION_JSON_VALUE)
    Integer sendMsg(@RequestBody MessageInput messageInput);
}
